feat:Design & Implement a Premium Footer - #80
Merged
krishkhinchi merged 2 commits intoJul 19, 2026
Conversation
|
CodeAnt AI is reviewing your PR. |
📝 WalkthroughWalkthroughThe marketing footer is split into hero, navigation, branding, social, and attribution components. ChangesPremium marketing footer
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related issues
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
CodeAnt AI finished reviewing your PR. |
There was a problem hiding this comment.
Actionable comments posted: 6
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@frontend/src/components/layouts/FooterHero.tsx`:
- Around line 57-61: Update the Get Started control in FooterHero so it renders
as a single interactive element rather than nesting ShimmerButton’s button
inside Link. Use ShimmerButton’s supported polymorphic or asChild API to render
the dashboard navigation link directly, preserving the existing styling and
destination.
- Around line 63-68: Add a matching contact anchor to the landing-page section
targeted by the footer links, using id="contact" so the /#contact links in
FooterHero and FooterLinks scroll to the intended section. Ensure the existing
section behavior and styling remain unchanged.
In `@frontend/src/components/layouts/FooterLinks.tsx`:
- Around line 14-15: Update the Careers and Blog entries in the footer links
configuration to avoid rendering "#" as a working destination. Use their real
routes if available; otherwise render them as non-interactive “Coming soon” text
while preserving the existing footer layout.
- Around line 62-64: Update the tagline paragraph in FooterLinks to exactly read
“An AI-Powered Autonomous Space Traffic Management Platform.”, preserving its
existing styling and placement.
- Line 8: Update the FooterLinks technology entry to use the router’s registered
/tech path instead of /technologies, while preserving its existing label and
link structure.
In `@frontend/src/components/layouts/FooterSocials.tsx`:
- Around line 7-13: Update the socials array in FooterSocials to retain the
existing Email entry and add GitHub, LinkedIn, and X entries with their required
hrefs and corresponding icons, so the footer renders all four required social
links.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: a2ab3b1b-63b6-422c-b7a4-f6c3ee04d857
📒 Files selected for processing (5)
frontend/src/components/layouts/FooterHero.tsxfrontend/src/components/layouts/FooterLinks.tsxfrontend/src/components/layouts/FooterSocials.tsxfrontend/src/components/layouts/MarketingLayout.tsxfrontend/src/pages/LandingPage.tsx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
User description
Description
Summary
Redesigned the marketing footer to provide a modern, premium, space-inspired user experience that aligns with Kepler's branding and design language.
Changes Made
Related Issue
Fixes #79
Checklist
Screenshots / Screen Recordings
Before :
After:
keplerdemo.mp4
Breaking Changes
No breaking changes. This update only redesigns the marketing footer UI and does not affect existing functionality.
ECSoC26 Submission
ECSoC26-L1– BeginnerECSoC26-L2– IntermediateECSoC26-L3– AdvancedAdditional Note :
I could not find the file to link contact, hence used #/contact.
CodeAnt-AI Description
Redesign the marketing footer into a premium, expanded footer experience
What Changed
Impact
✅ Stronger footer calls to action✅ Easier access to key site pages✅ More prominent trust and status messaging💡 Usage Guide
Checking Your Pull Request
Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.
Talking to CodeAnt AI
Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:
This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.
Example
Preserve Org Learnings with CodeAnt
You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:
This helps CodeAnt AI learn and adapt to your team's coding style and standards.
Example
Retrigger review
Ask CodeAnt AI to review the PR again, by typing:
Check Your Repository Health
To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.
Summary by CodeRabbit
Summary
Greptile Summary
This PR replaces the original inline
MarketingFooterwith three new dedicated components (FooterHero,FooterLinks,FooterSocials) and removes theReliabilitysection fromLandingPage. The changes are purely presentational and introduce no new data fetching or business logic.Confidence Score: 5/5
The change is purely presentational — it swaps an inline footer for three new display components — and introduces no new data fetching, auth, or business logic.
All previously identified issues (broken #contact anchor, unused ArrowRight import, decorative h1, dead state in LandingPage) were already flagged in earlier review rounds. No new blocking defects were found in this pass. The new components are self-contained and the rendering path is straightforward.
No files require special attention beyond the items already under discussion in previous review threads.
Important Files Changed
to="/#contact"button targets a hash anchor that no longer exists on the page.#hrefs for Careers/Blog/FAQs are intentional stubs; decorative<h1>watermark and unused tiny logo image are minor concerns already flagged.ArrowRightis imported but never used (already flagged), otherwise straightforward.footerLinkClassand theFooterLinktype are now dead code (already flagged), andid="contact"was dropped from the<footer>element (already flagged).Reliabilitysection; leaves behind deadnavigate,handleLaunch, andprefersReducedMotionstate/effect (already flagged).Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD ML[MarketingLayout.tsx] --> MF[MarketingFooter] MF --> FH[FooterHero.tsx] MF --> FL[FooterLinks.tsx] MF --> FS[FooterSocials.tsx] FH -->|Link to /dashboard| DB[(Dashboard)] FH -->|Link to /#contact| BROKEN[⚠️ #contact — no anchor target] FL --> FC1[FooterCard: Platform] FL --> FC2[FooterCard: Company] FL --> FC3[FooterCard: Resources] FC2 -->|/#contact| BROKEN FC3 -->|/#contact| BROKEN LP[LandingPage.tsx] -->|removed| REL[~~Reliability section~~] LP --> DEAD[⚠️ Dead: navigate / handleLaunch / prefersReducedMotion]%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%% flowchart TD ML[MarketingLayout.tsx] --> MF[MarketingFooter] MF --> FH[FooterHero.tsx] MF --> FL[FooterLinks.tsx] MF --> FS[FooterSocials.tsx] FH -->|Link to /dashboard| DB[(Dashboard)] FH -->|Link to /#contact| BROKEN[⚠️ #contact — no anchor target] FL --> FC1[FooterCard: Platform] FL --> FC2[FooterCard: Company] FL --> FC3[FooterCard: Resources] FC2 -->|/#contact| BROKEN FC3 -->|/#contact| BROKEN LP[LandingPage.tsx] -->|removed| REL[~~Reliability section~~] LP --> DEAD[⚠️ Dead: navigate / handleLaunch / prefersReducedMotion]Comments Outside Diff (1)
frontend/src/components/layouts/MarketingLayout.tsx, line 38-40 (link)footerLinkClassand theFooterLinktype were only used by the old inlineMarketingFooterimplementation. Now that the footer delegates entirely to the three new components, both are dead code. Remove them to avoid confusion.Prompt To Fix With AI
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
frontend/src/components/layouts/MarketingLayout.tsx, line 201-205 (link)FooterLinktype was only used by the removed inline footer implementation and is now unreferenced.Prompt To Fix With AI
frontend/src/pages/LandingPage.tsx, line 143-165 (link)Reliabilityremovalnavigate,handleLaunch, and theprefersReducedMotionmedia-query listener are all set up but never consumed —<Hero />and<HowItWorks />are rendered without props. These should be removed to avoid dead code and a no-opuseEffect.Prompt To Fix With AI
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Reviews (2): Last reviewed commit: "feat:updated Kepler logo in footer" | Re-trigger Greptile